<template>
	<u-button 
		:type="type"
		:size="size"
		:disabled="disabled"
		@click="handleClick"
	>
		<slot></slot>
	</u-button>
</template>

<script>
import { checkLogin } from '@/utils/loginCheck.js'

/**
 * 需要登录的按钮组件
 * 使用方法：
 * <LoginRequiredButton @click="doSomething" message="该功能需要登录">
 *   点击按钮
 * </LoginRequiredButton>
 */
export default {
	name: 'LoginRequiredButton',
	props: {
		type: {
			type: String,
			default: 'primary'
		},
		size: {
			type: String,
			default: 'default'
		},
		disabled: {
			type: Boolean,
			default: false
		},
		message: {
			type: String,
			default: '该功能需要登录'
		}
	},
	methods: {
		handleClick() {
			if (checkLogin(this.message)) {
				// 登录状态正常，触发父组件的点击事件
				this.$emit('click')
			}
		}
	}
}
</script>
